package com.ulife.permission.manager;

import com.ulife.common.Result;
import com.ulife.common.exception.ManagerException;
import com.ulife.permission.common.UserQueryResult;
import com.ulife.permission.dao.dataobject.UserDO;

public interface UserManager {

	Result<UserDO> login(String userName, String password) throws ManagerException;

	Result<UserDO> getUserById(long userId) throws ManagerException;

	Result<UserDO> addUser(UserDO user) throws ManagerException;

	UserQueryResult getAllUser() throws ManagerException;

	Result<Integer> delUser(long userId) throws ManagerException;

	Result<Integer> updateUser(UserDO user) throws ManagerException;

	UserQueryResult getAllAvailableUsers() throws ManagerException;

}
